package cn.manter.org.mapper;

import cn.manter.org.domain.Department;
import cn.manter.org.query.DepartmentQuery;
import cn.manter.user.mapper.Depatrment;

import java.util.List;

public interface DepartmentMapper {

    // 查询所有
    /** 
    * @Title: loadAll
    * @Description: TODO
    * @Author: Mr.Zhao
    * @Version: 1.0
    * @Date:  2022/6/21 0021 19:37
    * @Parameters: []
    * @Return java.util.List<cn.manter.org.domain.Department>
    */
    List<Department> loadAll();

    // 查询通过id
    /** 
    * @Title: loadById
    * @Description: TODO
    * @Author: Mr.Zhao
    * @Version: 1.0
    * @Date:  2022/6/21 0021 18:03  
    * @Parameters: [id]
    * @Return cn.manter.org.domain.Department
    */
    Department loadById(Long id);


    // 删除通过id
    /** 
    * @Title: remove
    * @Description: TODO
    * @Author: Mr.Zhao
    * @Version: 1.0
    * @Date:  2022/6/21 0021 18:04  
    * @Parameters: [id]
    * @Return void
    */
    void remove(Long id);

    // 添加

    /** 
    * @Title: save
    * @Description: TODO
    * @Author: Mr.Zhao
    * @Version: 1.0
    * @Date:  2022/6/21 0021 18:04  
    * @Parameters: [department]
    * @Return void
    */
    void save(Department department);

    // 修改
    /** 
    * @Title: update
    * @Description: TODO
    * @Author: Mr.Zhao
    * @Version: 1.0
    * @Date:  2022/6/21 0021 18:04  
    * @Parameters: [department]
    * @Return void
    */
    void update(Department department);

    // 分页 + 高级查询
    /** 
    * @Title: queryData
    * @Description: TODO
    * @Author: Mr.Zhao
    * @Version: 1.0
    * @Date:  2022/6/21 0021 18:04  
    * @Parameters: [departmentQuery]
    * @Return java.util.List<cn.manter.org.domain.Department>
    */
    List<Department> queryData(DepartmentQuery departmentQuery);

    // 查询总条数
    /** 
    * @Title: queryCount
    * @Description: TODO
    * @Author: Mr.Zhao
    * @Version: 1.0
    * @Date:  2022/6/21 0021 18:04  
    * @Parameters: [departmentQuery]
    * @Return java.lang.Integer
    */
    Integer queryCount(DepartmentQuery departmentQuery);
}
